<?php

//
//  Copyright (C) 2004-2006  Autodesk, Inc.
//
//  This library is free software; you can redistribute it and/or
//  modify it under the terms of version 2.1 of the GNU Lesser
//  General Public License as published by the Free Software Foundation.
//
//  This library is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
//  Lesser General Public License for more details.
//
//  You should have received a copy of the GNU Lesser General Public
//  License along with this library; if not, write to the Free Software
//  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
//

?>

<?php
require_once("config.php");
require_once("utils.php");
require_once(ROOT_DIR_CLASES.'/cCliente.php'); 
require_once 'JSON.php';
class CuentaF {
 	var $id;
	var $label;
	var $nombre;
    var $nombre_dos;
    var $codigocl;
    var $patente;
    var $identificador;
	var $codigo;
	var $codigoAlfa;
	var $imagen;
}
class QuerySelectFijos{
	private $args = null;
	

	function __construct($args)
	{
		$this->args = $args;
	}

	function Execute(){
		$result   	= array();
		$iCuenta  	= $this->args['CUENTA'];
		$iObjetivo	= (int)$this->args['OBJETIVO'];
		$iObjetivoDB= (int)$this->args['OBJETIVODB'];
		$iFlotaId 	= (int)$this->args['FLOTA'];
		$iTablaId 	= (int)$this->args['TABLAID'];
		$iRCId    	= (int)$this->args['RCID'];
	 	$FIJlblformat = FIJ_LBLFORMAT;
	 	if($iObjetivo == 5){
			/*Agarro el label format del cliente para poder ordenar luego cuando obtengo las cuentas*/
			$configRegistrada = cConfiguracion::getConfig($iTablaId, $iObjetivo);
		 	if (($configRegistrada->cantidad()>0)&&(trim($configRegistrada->campo('FIJ_lblformat',0))!='')){ //tiene configuracion inicial
		 		$FIJlblformat = $configRegistrada->campo('FIJ_lblformat',0);
			}
		 	$lblFormat 		=  split(',',$FIJlblformat);
		 	$orderByLabel 	= getOrderByFromLabelFormat($lblFormat);
		 	
           	$vCuentas = BykomCliente::getCuentasByDealer($iTablaId,$orderByLabel,$iRCId);
	 	}elseif($iObjetivo == 4){
	 		
			$configRegistrada = cConfiguracion::getConfig($iTablaId, $iObjetivo);
		 	if (($configRegistrada->cantidad()>0)&&(trim($configRegistrada->campo('FIJ_lblformat',0))!='')){ //tiene configuracion inicial
		 		$FIJlblformat = $configRegistrada->campo('FIJ_lblformat',0);
			}
		 	$lblFormat 		=  split(',',$FIJlblformat);
		 	$orderByLabel 	= getOrderByFromLabelFormat($lblFormat);
           	$vCuentas 		= BykomCliente::getCuentasByAlias($iTablaId,$orderByLabel,$iRCId,$iCuenta);
           	if($vCuentas->cantidad()==0){
           		$vCuentas = BykomCliente::getCuentasByDealer($iCuenta,$orderByLabel,$iRCId);
           	}
	 	}
        if($vCuentas->cantidad()){
        	$cta = new CuentaF();
			$cta->id = "";
			$cta->nombre = "";
	        $cta->nombre_dos = "";
	        $cta->codigocl = "";
	        $cta->patente = "";
	        $cta->identificador = "";
			$cta->codigo = "";
			$cta->codigoAlfa = "";
			$cta->imagen = "";
        	$cta->label = "";
    		array_push($result, $cta);
			for($i=0; $i<$vCuentas->cantidad(); $i++){
			 	$cta 				= new CuentaF();
				$cta->id 			= $vCuentas->campo('ORDER_ID',$i);
				$cta->nombre 		= ReplaceChars($vCuentas->campo('nombre',$i));
		        $cta->nombre_dos 	= ReplaceChars($vCuentas->campo('nombre_dos',$i));
		        $cta->codigocl 		= $vCuentas->campo('codigocl',$i);
		        $cta->patente 		= $vCuentas->campo('patente',$i);
		        $cta->identificador = ReplaceChars($vCuentas->campo('identificador',$i));
				$cta->codigo 		= ReplaceChars($vCuentas->campo('Codigo',$i));
				$cta->codigoAlfa 	= ReplaceChars($vCuentas->campo('CodigoAlfa',$i));
				$cta->imagen 		= ReplaceChars($vCuentas->campo('Imagen',$i));		  
				$label = '';
				if (trim($lblFormat[0])!=''){
					$label .= ReplaceChars($vCuentas->campo($lblFormat[0],$i)).' ';
				}
				if (trim($lblFormat[1])!=''){
					$label .= ReplaceChars($lblFormat[1]).' ';
				}
				if (trim($lblFormat[2])!=''){
					$label .= ReplaceChars($vCuentas->campo($lblFormat[2],$i)).' ';
				}
				if (trim($lblFormat[3])!=''){
					$label .= ReplaceChars($lblFormat[3]).' ';
				}
				if (trim($lblFormat[4])!=''){
					$label .= ReplaceChars($vCuentas->campo($lblFormat[4],$i));
				}
				if (trim($label)==''){
					$label = 'unformatted label';
				}
				$cta->label = $label;
    			array_push($result, $cta);
			 }
        }else{
        	$oCuenta = new stdClass();
   			$oCuenta->id = "";
   			$oCuenta->nombre = "";
   			$oCuenta->iRCId = $iRCId;
        	array_push($result, $oCuenta);
        }
		return $result;
	}
}
?>